Subject: APPN Function Sets 041 and 042

From: "J. G. Dudley (444/4358)" <[email-masked]>
Date: Tue, 4 Oct 94 10:59:20 EDT

Matthew and Dave,
I saw your notes concerning function sets 041 and 042, and decided to
clarify the situation; I didn't expect the excruciating amount of
detail required until I got started.

Function set 041 actually describes three distinct functions:  path
control (PC) segmentation, session connector (SC) segmentation and
reassembly, and half session reassembly.  There could have been three
function sets defined, but, for better or worse, all three were rolled
into one.

Appendix A says that 041 is base for network nodes and optional for end
nodes.  Let's look at each of the three functions individually to see
what this means.  For PC segmentation the meaning is simple.  PC in a
network node must be capable of segmenting all RUs except BIND and
RSP(BIND) when they are too large for the outgoing TG's maximum send
BTU size.  When an end node does not support this function, the LU
session manager (SM) must ensure that all outgoing message units passed
to PC are small enough for the outgoing TG.

SC segmentation and reassembly are only applicable in network nodes.
The SC must be capable of sending segments over either stage that are
small enough for that stage's TG even if the segments received over the
other stage were larger.

Because HS reassembly is defined on a node basis, 6.2 LUs in an end node
set the Whole BIUs Required indicator (WBRI) in BIND or RSP(BIND) based
on the node definition (see Fig. 4-10 in LU 6.2 Reference:  Peer
Protocols.)  Thus, if a SM receives a BIND or RSP(BIND) with WBRI set to
yes, it must ensure that all outgoing message units passed to PC are
small enough for the outgoing TG.  Likewise, if a session connector
manager (SCM) receives a BIND or RSP(BIND) with WBRI set to yes, it is
responsible for ensuring that all RUs received by the SC over the
opposite stage are small enough for the TG; it does this with max RU size
negotiation on BIND and RSP(BIND).

Because HS reassembly should always be supported in a network node,
a SM in a network node should never set WBRI to yes; normally, however,
nothing breaks if it does.  (Note that a SLU can reject a BIND with
WBRI set to yes if its SEND_MAX_RU_SIZE_LOWER_BOUND is greater than the
maximum send BTU size - 9.  See BIND_RQ_STATE_ERROR on p. 4-72 of LU 6.2
Reference.)

Function set 042 is much simpler.  It refers to PC's capability to pass
interleaved segments (i.e., from different sessions) to the appropriate
HS or SC based on the LFSID.  All type 2.1 nodes are supposed to support
this function.  Some type 2.0 nodes do reassembly on a link station
basis.

Making 041 a base function on end nodes for performance reasons is a
proposal that should be made to the Architecture Reference SIG.

Regards,
Gary Dudley